package cn.group.hotel2.service;

import cn.group.hotel2.pojo.dto.RoleAddNewDTO;
import cn.group.hotel2.pojo.entity.Role;
import cn.group.hotel2.pojo.vo.RoleListItemVO;
import cn.group.hotel2.utils.PageResult;
import cn.group.hotel2.utils.PageUtil;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
 * 处理角色业务的接口
 *
 * @author Edgar
 * @version 1.0.0
 * @date 2022/11/28
 */
@Transactional
public interface IRoleService {

    /**
     * 角色列表
     *
     * @return {@link List}<{@link RoleListItemVO}>
     */
    PageResult list(PageUtil pageUtil);


    /**
     * 按角色id删除
     *
     * @param id id
     */
    void deleteByRoleId(Long id);

    /**
     * 添加角色
     *
     * @param roleAddNewDTO 添加新角色dto
     */
    void addNew(RoleAddNewDTO roleAddNewDTO);
}
